package org.jeecg.modules.power.shop.mapper;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.app.v1.shop.entity.ApiListShopEntity;
import org.jeecg.modules.app.v1.shop.entity.ApiShopEntity;
import org.jeecg.modules.power.shop.entity.YlShop;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * @Description: 门店表
 * @Author: jeecg-boot
 * @Date:   2024-07-08
 * @Version: V1.0
 */
public interface YlShopMapper extends BaseMapper<YlShop> {

    List<ApiListShopEntity> shopList(String lat, String lng, String shopName,Integer distance,Integer number);

    /**
     * 安卓管理端我的门店列表
     * @param page
     * @param lat
     * @param lng
     * @param shopName
     * @param shopBd
     * @return
     */
    IPage<ApiListShopEntity> myShopList(Page<ApiListShopEntity> page, String lat, String lng, String shopName,String shopBd,String shopStatus);

    ApiShopEntity myShopDetail(String id);
    /**
     * 其他人的门店或者公海门店
     * @param page
     * @param lat
     * @param lng
     * @param status
     * @param shopBd
     * @return
     */
    IPage<ApiListShopEntity> otherShopList(Page<ApiListShopEntity> page, String lat, String lng, String status,String shopName,String shopBd);

    /**
     * 收藏门店列表
     * @param page
     * @param lat
     * @param lng
     * @param shopBd
     * @return
     */
    IPage<ApiListShopEntity> collectList(Page<ApiListShopEntity> page, String lat, String lng ,String shopName, String shopBd);






    /**全国地图数据
     *
     * @param name 省
     * @return
     */
    int getShopQuantity(@Param("name")String name);


    /**mi
     * 获取上个月 新增的门店数据
     * @return
     */
    List<YlShop> getLastMonthShop();


    /**mi
     *  APP运营端-新增门店-2级页面- 店铺数据
     * @param type 时间类型（1今日、2昨日、3本周、4本月）
     * @param bdId 业务员id
     * @param groupId 小组id
     * @return
     */
    List<Map>   getAddShopList(@Param("type")Integer type,@Param("bdId") String bdId,@Param("groupId") String groupId);

    /**mi
     * 根据 群组 获取 业务员id  获取 门店数据  getShopByIdList
     * @param bdId 业务员id
     * @param groupId 小组id
     * @return
     */

    List<String> getShopByIdList(@Param("bdId") String bdId,@Param("groupId") String groupId);


    /**
     * 获取本月新增的门店数据
     * @param jDate 截止时间
     * @return
     */
    List<YlShop> getThisMonthShop(@Param("jDate")String jDate);


    /**
     * app首页统计 近多少天的数据
     * @param day 近几天
     * @param bdId  业务员id
     * @param groupId 小组id
     * @return
     */
    Integer getHomeShopStatistics(@Param("day")Integer day,@Param("bdId") String bdId,@Param("groupId") String groupId);


    /**
     * app首页统计 近多少天的数据 折线图
     * @param day 近几天
     * @param bdId  业务员id
     * @param groupId 小组id
     * @return
     */
    List<Map> getHomeShopLineChart(@Param("day")Integer day,@Param("bdId") String bdId,@Param("groupId") String groupId);

}
